﻿using System;
using Rendiciones.Web.infraestructura;
using Rendiciones.Logica.Servicios;

namespace Rendiciones.Web.usercontrols
{
    public partial class ctrlVistaPrevia : UserControlBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        public void Mostrar(int idRendicion)
        {
            LimpiarErrores(pnlVp);
            pnlVp.Attributes.Remove("style");
            pnlVp.Attributes.Add("style", "width:800px;");
            Cargar(idRendicion);
            mpeVp.Show();
        }

        public void Ocultar()
        {
            mpeVp.Hide();
        }

        private void Cargar(int idRendicion)
        {
            try
            {
                var servGastos = new ServGastos();
                var rendicion = servGastos.CargarRendicionPorId(idRendicion);
                rendicion.DetallesGasto = servGastos.BuscarGastosDeRendicion(rendicion.IdRendicion);
                var proyecto = Modulos.Rendiciones.Proyectos.Leer(rendicion.IdProyecto);

                lblProyecto.Text = proyecto.Nombre;
                lblCentroCosto.Text = proyecto.CentroCosto;

                grRendicion.DataSource = rendicion.DetallesGasto;
                grRendicion.DataBind();
            }
            catch(Exception exception)
            {
                MuestraMensajeError(pnlVp, "<strong>Error:</strong> " + exception.Message);
            }
        }

        protected void BtnCerrarVpClick(object sender, EventArgs e)
        {
            Ocultar();
        }

        protected void BtnCerrarClick(object sender, EventArgs e)
        {
            Ocultar();
        }
    }
}